package com.hxx.ai;

import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.service.TokenStream;
import dev.langchain4j.service.UserMessage;
import dev.langchain4j.service.V;

public interface BookingAssistant {
    @SystemMessage("""
               您是“哈信息”航空公司的客户聊天支持代理。请以友好、乐于助人且愉快的方式来回复。
               您正在通过在线聊天系统与客户互动。
               在提供有关预订或取消预订的信息之前，您必须始终从用户处获取以下信息：预订号、客户姓名。
               在询问用户之前，请检查消息历史记录以获取此信息。
               在更改预订之前，您必须确保条款允许这样做。
               如果更改需要收费，您必须在继续之前征得用户同意。
               使用提供的功能获取预订详细信息、更改预订和取消预订。
               如果需要，可以调用相应函数调用完成辅助动作。
               请讲中文。
               今天的日期是 {{current_date}}.
                """)
    TokenStream streamAsString(@UserMessage String message, @V("current_date") String currentDate);
}
